package module.auth;

import common.model.Entity.Student;
import network.protocol.Response;

/**
 * 学生服务接口
 * 提供对学生信息的增删改查操作
 */
public interface StudentService {

    /**
     * 设置学生状态（通过字段参数）
     */
    Response<?> SetStuStatus(Integer age, String school_year, String stu_id,
                             String class_id, String college, String emergency_num, Integer family_num, String semester);

    /**
     * 设置学生状态（通过 Student 对象）
     */
    Response<?> SetStuStatus(Student stu);

    /**
     * 根据学生ID查询学生状态
     */
    Response<?> SearchStuStatus(Long id);

    /**
     * 根据用户名查询学生状态
     */
    Response<?> SearchStuStatus(String username);

    /**
     * 更新学生状态（通过字段参数）
     */
    Response<?> UpdateStuStatus(String Stuid, Integer age, String school_year, String semester,
                                String class_id, String college, String emergency_num, Integer family_num);

    /**
     * 更新学生状态（通过 Student 对象）
     */
    Response<?> UpdateStuStatus(Student stu);

    /**
     * 查询所有学生状态
     */
    Response<?> SearchAllStuStatus();
}
